home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nebula 2
/
Nebula Two.iso
/
SourceCode
/
AdobeExamples
/
NX_Hello
/
WorldView.m
< prev
Wrap
Text File
|
1995-06-12
|
3KB
|
102 lines
/*
* (a) (C) 1990 by Adobe Systems Incorporated. All rights reserved.
*
* (b) If this Sample Code is distributed as part of the Display PostScript
* System Software Development Kit from Adobe Systems Incorporated,
* then this copy is designated as Development Software and its use is
* subject to the terms of the License Agreement attached to such Kit.
*
* (c) If this Sample Code is distributed independently, then the following
* terms apply:
*
* (d) This file may be freely copied and redistributed as long as:
* 1) Parts (a), (d), (e) and (f) continue to be included in the file,
* 2) If the file has been modified in any way, a notice of such
* modification is conspicuously indicated.
*
* (e) PostScript, Display PostScript, and Adobe are registered trademarks of
* Adobe Systems Incorporated.
*
* (f) THE INFORMATION BELOW IS FURNISHED AS IS, IS SUBJECT TO
* CHANGE WITHOUT NOTICE, AND SHOULD NOT BE CONSTRUED
* AS A COMMITMENT BY ADOBE SYSTEMS INCORPORATED.
* ADOBE SYSTEMS INCORPORATED ASSUMES NO RESPONSIBILITY
* OR LIABILITY FOR ANY ERRORS OR INACCURACIES, MAKES NO
* WARRANTY OF ANY KIND (EXPRESS, IMPLIED OR STATUTORY)
* WITH RESPECT TO THIS INFORMATION, AND EXPRESSLY
* DISCLAIMS ANY AND ALL WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR PARTICULAR PURPOSES AND NONINFRINGEMENT
* OF THIRD PARTY RIGHTS.
*/
/*
* WorldView.m
*
* WorldView is a subclass of View. It simply displays and clears a message in
* the view. The one lesson this example shows is the modification of
* "drawSelf::" and the call to "display". The method, "drawSelf::", should
* not be called directly.
*
* Rather, "display" should be called. The display message performs
* some necessary overhead such as bringing the View into focus by
* constructing a clipping path around its frame rectangle and making its
* coordinate system the current coordinate system for the application. The
* display method then messages drawSelf::. These steps are repeated for
* each of the View's subviews.
*
* Note: Any instance variables that need to be initialized before the first display
* should be done in the "init" or "initFrame:" method. In this case,
* drawHello is already a null value at its creation so no initialization
* has to be performed.
*/
/*
* Version: 2.0
* Author: Ken Fromm
* History:
* 03-07-91 Added this comment.
*/
#import "WorldView.h"
#import <dpsclient/wraps.h>
@implementation WorldView
- drawHello:sender
{
drawHello = YES;
[self display];
return self;
}
- clearHello:sender
{
drawHello = NO;
[self display];
return self;
}
/*
* The first two lines clear the view, The remaider display the
* message in the view.
*/
- drawSelf:(NXRect *) r: (int) count
{
PSsetgray (NX_LTGRAY);
PSrectfill (bounds.origin.x, bounds.origin.y,
bounds.size.width, bounds.size.height);
if (drawHello)
{
PSsetgray (NX_BLACK);
PSmoveto (50.0, 70.0);
PSselectfont ("Times-Roman", 40.0);
PSshow ("Hello World");
}
return self;
}
@end